package com.rgs.ssm.service;

import com.rgs.ssm.domain.Role;
import com.rgs.ssm.domain.UserInfo;
import org.springframework.security.core.userdetails.UserDetailsService;

import java.util.List;

/**
 * @create 2021-02-18 18:56
 *
 * 用户模块的service层接口
 **/
public interface IUserService extends UserDetailsService {

    void saveUser(UserInfo userInfo);

    void delete(Integer id);

    void update(UserInfo userInfo);

    /**
     * 分页查询所有的用户
     * @param page
     * @param size
     * @return
     */
    List<UserInfo> findAll(int page,int size);

    /**
     * 根据用户id查询用户
     * @param userId
     * @return
     */
    UserInfo findById(Integer userId);

    /**
     * 根据用户id，返回用户没有的角色
     * @param userId
     * @return
     */
    List<Role> findByIdOtherRole(Integer userId);

    void addRoleToUser(Integer userId,Integer[] roleIds);
}
